package juego.Graficos;

import java.awt.BorderLayout;
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.Label;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JTextArea;
import javax.swing.border.EmptyBorder;

import juego.Juego;
import juego.Dificultad.Dificil;
import juego.Dificultad.Dificultad;
import juego.Dificultad.Facil;
import juego.Dificultad.Moderado;
import juego.Vehiculo.Auto;
import juego.Vehiculo.Camioneta;
import juego.Vehiculo.Moto;
import juego.Vehiculo.Vehiculo;

public class NuevaPartida extends JPanel{

	private static final long serialVersionUID = 1L;

	private JPanel cuerpoPrincipal; 
	private JPanel centroPantalla;
	private JButton jugar;
	private JRadioButton facil;
	private JRadioButton moderado;
	private JRadioButton dificil;
	private JRadioButton moto;
	private JRadioButton camioneta;
	private JRadioButton auto;
	private ButtonGroup vehiculo;
	private ButtonGroup dificultad;
	private JugarAction jugarAction;
	
	public NuevaPartida(JugarAction unJugarAction){
		jugarAction = unJugarAction;
		setearCuerpoPrincipal();
	}
	
	public void setearCuerpoPrincipal(){

		cuerpoPrincipal = new JPanel();
		cuerpoPrincipal.setLayout( new BorderLayout() );
		centroPantalla = new JPanel();
		centroPantalla.setLayout( new GridLayout(3,2,50,50) );
		
		dificil = new JRadioButton("Dificil");
		facil = new JRadioButton("Facil",true);
		moderado = new JRadioButton("Moderado");
		moto = new JRadioButton("Moto");
		camioneta = new JRadioButton("Camioneta");
		auto = new JRadioButton("Auto",true);
		vehiculo = new ButtonGroup();
		dificultad = new ButtonGroup();
		jugar = new JButton();
		
		//auto.setText("Auto");
		//moto.setText("Moto");
		//camioneta.setText("Camioneta");
		//dificil.setText("Dificil");
		//moderado.setText("Moderado");
		//facil.setText("Facil");
		jugar.setText("Jugar");
		
		auto.setFont(new Font("sansserif",Font.ITALIC,20));
		moto.setFont(new Font("sansserif",Font.ITALIC,20));
		camioneta.setFont(new Font("sansserif",Font.ITALIC,20));
		facil.setFont(new Font("sansserif",Font.ITALIC,20));
		dificil.setFont(new Font("sansserif",Font.ITALIC,20));
		moderado.setFont(new Font("sansserif",Font.ITALIC,20));
		jugar.setFont(new Font("sansserif",Font.ITALIC,20));
		
		dificultad.add(facil);
		dificultad.add(moderado);
		dificultad.add(dificil);
		vehiculo.add(moto);
		vehiculo.add(auto);
		vehiculo.add(camioneta);
		
		jugar.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				Vehiculo unVehiculo;
				if (auto.isSelected()) {
					 unVehiculo = new Auto();
				} 
				else {
					if (camioneta.isSelected()) {
						unVehiculo = new Camioneta();
					}
					
					else {
						unVehiculo = new Moto();
					}
				}
				Dificultad unaDificultad;
				if (dificil.isSelected()) {
			        unaDificultad = new Dificil();
				} 
				else{
					if (moderado.isSelected()) {
						unaDificultad = new Moderado();
					} 
					else {
						unaDificultad = new Facil();
					}
				}
			jugarAction.accionarBotonComenzarPartida(unVehiculo, unaDificultad);	 	
			}
		});
		
		centroPantalla.add(moto);
		centroPantalla.add(auto);
		centroPantalla.add(camioneta);
		centroPantalla.add(facil);
		centroPantalla.add(moderado);
		centroPantalla.add(dificil);
		centroPantalla.add(jugar);

		cuerpoPrincipal.add(centroPantalla,BorderLayout.CENTER);
		cuerpoPrincipal.add(centroPantalla,BorderLayout.SOUTH);
		cuerpoPrincipal.setBorder(new EmptyBorder(100, 50, 50, 50) );
		
		this.add(cuerpoPrincipal);
		this.setVisible(true);
	
	}
	
}
